ASP.Net অ্যাপ্লিকেশনে ফর্ম ডেটা সংগ্রহ করা এবং মডেলে বাইন্ড করা একটি সাধারণ প্রক্রিয়া, যা Model Binding এর মাধ্যমে সহজে সম্পন্ন করা যায়। Model Binding হল একটি প্রক্রিয়া যেখানে ফর্মের ইনপুট ডেটা সরাসরি একটি C# মডেল ক্লাসে ম্যাপ করা হয়। এটি অ্যাপ্লিকেশন ডেভেলপমেন্টকে অনেক সহজ এবং পরিষ্কার করে তোলে।
এখানে ASP.Net MVC অথবা ASP.Net Core MVC অ্যাপ্লিকেশনে ফর্ম ডেটা সংগ্রহ এবং মডেলে বাইন্ড করার প্রক্রিয়া ব্যাখ্যা করা হয়েছে।
ASP.Net MVC বা ASP.Net Core MVC অ্যাপ্লিকেশনে ফর্ম ডেটা সংগ্রহ করতে সাধারণত HTML ফর্ম এবং Controller এর মধ্যে ইন্টারঅ্যাকশন করা হয়। ফর্মের ইনপুট ডেটা যখন POST করা হয়, তখন তা মডেল ক্লাসে বাইন্ড করা হয়।
প্রথমে HTML ফর্ম তৈরি করতে হবে যেখানে ব্যবহারকারী ইনপুট দেবে:
Example (Index.cshtml):
<form method="post" action="/Home/Create">
<div>
<label for="Name">Name</label>
<input type="text" id="Name" name="Name" />
</div>
<div>
<label for="Email">Email</label>
<input type="email" id="Email" name="Email" />
</div>
<button type="submit">Submit</button>
</form>
এই ফর্মে, Name
এবং Email
ইনপুট ফিল্ড রয়েছে এবং যখন ফর্মটি সাবমিট হবে, তখন ডেটা POST হয়ে HomeController এর Create
অ্যাকশনে পাঠানো হবে।
এখন, ডেটা যেটি ফর্ম থেকে পাঠানো হবে তা গ্রহণ করার জন্য একটি মডেল ক্লাস তৈরি করতে হবে।
Example (Person.cs):
public class Person
{
public string Name { get; set; }
public string Email { get; set; }
}
এটি একটি সাধারণ মডেল ক্লাস যা ফর্মের Name
এবং Email
ইনপুটগুলোর জন্য প্রপার্টি ধারণ করে।
ফর্মের ডেটা মডেলে বাইন্ড করতে Controller এর POST অ্যাকশন ব্যবহার করতে হবে। এখানে ASP.Net MVC বা ASP.Net Core MVC স্বয়ংক্রিয়ভাবে ফর্ম ইনপুট ডেটা গ্রহণ করে এবং তা মডেল ক্লাসের প্রপার্টি সাথে বাইন্ড করে।
Example (HomeController.cs):
public class HomeController : Controller
{
[HttpGet]
public IActionResult Index()
{
return View();
}
[HttpPost]
public IActionResult Create(Person person)
{
if (ModelState.IsValid)
{
// মডেল ডেটা সফলভাবে বাইন্ড হয়েছে
// এখানে আপনি ডেটাবেসে সংরক্ষণ করতে পারেন অথবা অন্য কোনো প্রসেস করতে পারেন
return RedirectToAction("Index");
}
return View("Index");
}
}
এখানে, Create অ্যাকশন মেথডের মধ্যে Person
মডেলটি স্বয়ংক্রিয়ভাবে ফর্ম ডেটা দ্বারা পূর্ণ হবে। ASP.Net MVC বা ASP.Net Core MVC মডেল বাইন্ডিং প্রক্রিয়া ব্যবহার করে Name এবং Email ফর্ম ইনপুটগুলো Person
মডেলের প্রপার্টি Name
এবং Email
এ সেট করে দেবে।
ASP.Net এবং ASP.Net Core MVC এ Model Validation খুবই গুরুত্বপূর্ণ। আপনি মডেল ক্লাসের মধ্যে Data Annotations ব্যবহার করে ইনপুট ভ্যালিডেশন করতে পারেন।
Example (Person.cs):
public class Person
{
[Required]
[StringLength(100)]
public string Name { get; set; }
[Required]
[EmailAddress]
public string Email { get; set; }
}
এখানে, Required
অ্যাট্রিবিউট ব্যবহার করা হয়েছে যাতে Name এবং Email ইনপুট ফিল্ডগুলো অবশ্যই পূর্ণ হতে হবে, এবং EmailAddress
অ্যাট্রিবিউট দিয়ে ইমেইল ফিল্ডটি সঠিক ফরম্যাটে থাকতে হবে।
[HttpPost]
public IActionResult Create(Person person)
{
if (ModelState.IsValid)
{
// যদি মডেলটি সঠিকভাবে ভ্যালিড থাকে
// ডেটা প্রসেস করা হবে
return RedirectToAction("Index");
}
return View("Index");
}
ModelState.IsValid ব্যবহার করে আপনি চেক করতে পারেন যে, ফর্ম ডেটা সঠিকভাবে ভ্যালিড হয়েছে কিনা।
ASP.Net অ্যাপ্লিকেশনে ফর্ম ডেটা সংগ্রহ করা এবং মডেলে বাইন্ড করা একটি সরল এবং কার্যকরী প্রক্রিয়া। Razor views এর মাধ্যমে ফর্ম তৈরি করা হয় এবং ASP.Net MVC বা ASP.Net Core MVC অ্যাকশন মেথডে ডেটা মডেল ক্লাসে বাইন্ড হয়। এছাড়া, Model Binding এবং Model Validation এর মাধ্যমে ডেটা সহজভাবে সংগ্রহ ও যাচাই করা যায়, যা আপনার অ্যাপ্লিকেশনের প্রক্রিয়াকে অনেক সহজ এবং সুরক্ষিত করে।